package com.blrs.controller;

import java.util.List;

import com.blrs.service.process.IStageAchievementService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.blrs.common.core.controller.BaseController;
import com.blrs.common.core.domain.AjaxResult;
import com.blrs.common.core.page.TableDataInfo;
import com.blrs.domain.ProjectInitiation;
import com.blrs.domain.dto.ProjectPlanningDTO;
import com.blrs.service.project.initiation.IProjectInitiationService;
import com.blrs.service.project.planning.IProjectPlanningService;
import com.blrs.domain.vo.ProjectPlanningVO;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestParam;

/**
 * 项目策划管理Controller
 * 
 * @author ruoyi
 * @date 2024-05-15
 */
@RestController
@RequestMapping("/project/planning")
public class ProjectPlanningController extends BaseController {
    
//    @Autowired
//    private IProjectInitiationService projectInitiationService;
//
//    @Autowired
//    private IProjectPlanningService projectPlanningService;
//
//
//    @Autowired
//    private IStageAchievementService stageAchievementService;
//
//    /**
//     * 查询已通过立项审核的项目列表
//     */
//    @GetMapping("/approved")
//    public TableDataInfo listApproved(ProjectInitiation projectInitiation) {
//        startPage();
//        // 查询条件：审核状态为已审核(1)且实施方式为本司执行(0)
//        projectInitiation.setAuditState("1");  // 已审核
//        projectInitiation.setEmbodiment("0");  // 本司执行
//        List<ProjectInitiation> list = projectInitiationService.selectProjectInitiationList(projectInitiation);
//        return getDataTable(list);
//    }
//
//    /**
//     * 获取项目详情
//     */
//    @GetMapping("/project/{projectId}")
//    public AjaxResult getProjectInfo(@PathVariable("projectId") String projectId) {
//        return success(projectInitiationService.selectProjectInitiationById(projectId));
//    }
//
//    /**
//     * 新增项目策划
//     */
//    @PostMapping
//    public AjaxResult add(@RequestBody ProjectPlanningDTO planningDTO) {
//        return toAjax(projectPlanningService.insertProjectPlanning(planningDTO));
//    }
//
//    /**
//     * 查询项目策划列表
//     */
//    @GetMapping("/list")
//    public TableDataInfo list(ProjectPlanningDTO planningDTO) {
//        startPage();
//        List<ProjectPlanningVO> list = projectPlanningService.selectProjectPlanningList(planningDTO);
//        return getDataTable(list);
//    }
//
//    /**
//     * 修改项目策划
//     */
//    @PutMapping
//    public AjaxResult edit(@RequestBody ProjectPlanningDTO planningDTO) {
//        return toAjax(projectPlanningService.updateProjectPlanning(planningDTO));
//    }
//
//    /**
//     * 获取项目策划详情
//     */
//    @GetMapping("/{planningId}")
//    public AjaxResult getInfo(@PathVariable("planningId") String planningId,
//                             @RequestParam(value = "useType", defaultValue = "1") Integer useType) {
//        return success(projectPlanningService.selectProjectPlanningById(planningId, useType));
//    }
//
//    /**
//     * 根据产品ids查询工艺模板
//     */
//    @GetMapping("/processTemplate/{productIds}")
//    public AjaxResult getProcessTemplate(@PathVariable("productIds") String productIds) {
//        return success(projectPlanningService.selectProcessTemplateByProductIds(productIds));
//    }
//
//    /**
//     * 根据阶段ID,模板ID查询项目交付物
//     */
//    @GetMapping("/deliverables/{processStageId}")
//    public AjaxResult getDeliverables(@PathVariable("processStageId") String processStageId,
//                                     @RequestParam("templateId") String templateId) {
//        return success(stageAchievementService.selectStageAchievementsByStageId(templateId,processStageId));
//    }
//
//    /**
//     * 删除项目策划
//     * 只能删除未审核的策划，同时删除所有用途类型的关联数据
//     */
//    @DeleteMapping("/{planningId}")
//    public AjaxResult remove(@PathVariable String planningId) {
//        return toAjax(projectPlanningService.deleteProjectPlanning(planningId));
//    }
//
//    /**
//     * 提交项目策划审核
//     */
//    @PostMapping("/submit")
//    public AjaxResult submitForApproval(@RequestBody ProjectPlanningDTO planningDTO) {
//        return toAjax(projectPlanningService.submitForApproval(planningDTO));
//    }

} 